Load in all of the files by setting the working directory and making a list of filenames to grab Add the Date and View of the trail to seperate columns using the character string of the filename

rm(list=ls(all=TRUE))
setwd("~/Post-doc/Data/Processed MatLab Files")
The working directory was changed to C:/Users/nicoleh3/Documents/Post-doc/Data/Processed MatLab Files inside a notebook chunk. The working directory will be reset when the chunk is finished running. Use the knitr root.dir option in the setup chunk to change the working directory for notebook chunks.
path <- "C:\\Users\\nicoleh3\\Documents\\Post-doc\\Data\\Processed MatLab Files\\"
files <- list.files(path=path, pattern="*.csv")

ldf = lapply(files, function(x) {
      dat = read.table(x, header=T, sep=",")
      # Add column names
      names(dat) = c('X', 'Y', 'Z', 'Track')
      # Add a column with the Date of the trial
      dat$Date = substr(x,1,8)
      # Add a column with the View of the trial
      dat$View = substr(x,14,15)
      # Add a column with the filename
      dat$File.name = substr(x,1,15)
      return(dat)
})

library(dplyr)
package 㤼㸱dplyr㤼㸲 was built under R version 3.6.3
Attaching package: 㤼㸱dplyr㤼㸲

The following objects are masked from 㤼㸱package:stats㤼㸲:

    filter, lag

The following objects are masked from 㤼㸱package:base㤼㸲:

    intersect, setdiff, setequal, union
df <- do.call("rbind", ldf)
## Date_view_track factor created
df$D_V_T <- paste(df$Date, df$View, df$Track, sep='_')
df$D_V_T <- as.factor(df$D_V_T)
## Date_view factor created
df$D_V <- paste(df$Date, df$View, sep='_') 
df$D_V <- as.factor(df$D_V)

head(df)
tail(df)

Add columns of metadata based on the D_V of each row

metadata <- read.csv("C:\\Users\\nicoleh3\\Documents\\Post-doc\\Data\\Metadata flat file 2021.08.10.csv", header = T)
head(metadata)
tail(metadata)

alldata <- merge(df, metadata)

head(alldata)
tail(alldata)

TotalData <- na.omit(alldata)
head(TotalData)
NA

Add heading, pitch and d and v values

TotalData$vx <- TotalData$dx/(1/30)  ## velocity on the x axis
TotalData$vy <- TotalData$dy/(1/30)  ## velocity on the y axis
TotalData$vz <- TotalData$dz/(1/30)  ## velocity on the z axis
TotalData$v <- TotalData$d/(1/30) ## total velocity

TotalData$heading <- atan(TotalData$dx/TotalData$dy)
TotalData$pitch <- atan(TotalData$dz/(sqrt(TotalData$dx^2 + TotalData$dy^2)))

hist(TotalData$pitch/(2*pi)*360)

hist(TotalData$heading/(2*pi)*360)


hist(TotalData$dz[abs(TotalData$dz)<.01],breaks = 100)

hist(TotalData$dy[abs(TotalData$dy)<.01],breaks = 100)

hist(TotalData$dx[abs(TotalData$dx)<.01],breaks = 100)

save.image("~/Post-doc/Data/Total Merged Data File (Sep 24 2021).RData")
LS0tDQp0aXRsZTogIk1lcmdpbmcgRmlsZXMiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpMb2FkIGluIGFsbCBvZiB0aGUgZmlsZXMgYnkgc2V0dGluZyB0aGUgd29ya2luZyBkaXJlY3RvcnkgYW5kIG1ha2luZyBhIGxpc3Qgb2YgZmlsZW5hbWVzIHRvIGdyYWINCkFkZCB0aGUgRGF0ZSBhbmQgVmlldyBvZiB0aGUgdHJhaWwgdG8gc2VwZXJhdGUgY29sdW1ucyB1c2luZyB0aGUgY2hhcmFjdGVyIHN0cmluZyBvZiB0aGUgZmlsZW5hbWUNCg0KDQpgYGB7cn0NCnJtKGxpc3Q9bHMoYWxsPVRSVUUpKQ0Kc2V0d2QoIn4vUG9zdC1kb2MvRGF0YS9Qcm9jZXNzZWQgTWF0TGFiIEZpbGVzIikNCnBhdGggPC0gIkM6XFxVc2Vyc1xcbmljb2xlaDNcXERvY3VtZW50c1xcUG9zdC1kb2NcXERhdGFcXFByb2Nlc3NlZCBNYXRMYWIgRmlsZXNcXCINCmZpbGVzIDwtIGxpc3QuZmlsZXMocGF0aD1wYXRoLCBwYXR0ZXJuPSIqLmNzdiIpDQoNCmxkZiA9IGxhcHBseShmaWxlcywgZnVuY3Rpb24oeCkgew0KICAgICAgZGF0ID0gcmVhZC50YWJsZSh4LCBoZWFkZXI9VCwgc2VwPSIsIikNCiAgICAgICMgQWRkIGNvbHVtbiBuYW1lcw0KICAgICAgbmFtZXMoZGF0KSA9IGMoJ1gnLCAnWScsICdaJywgJ1RyYWNrJykNCiAgICAgICMgQWRkIGEgY29sdW1uIHdpdGggdGhlIERhdGUgb2YgdGhlIHRyaWFsDQogICAgICBkYXQkRGF0ZSA9IHN1YnN0cih4LDEsOCkNCiAgICAgICMgQWRkIGEgY29sdW1uIHdpdGggdGhlIFZpZXcgb2YgdGhlIHRyaWFsDQogICAgICBkYXQkVmlldyA9IHN1YnN0cih4LDE0LDE1KQ0KICAgICAgIyBBZGQgYSBjb2x1bW4gd2l0aCB0aGUgZmlsZW5hbWUNCiAgICAgIGRhdCRGaWxlLm5hbWUgPSBzdWJzdHIoeCwxLDE1KQ0KICAgICAgcmV0dXJuKGRhdCkNCn0pDQoNCmxpYnJhcnkoZHBseXIpDQpkZiA8LSBkby5jYWxsKCJyYmluZCIsIGxkZikNCiMjIERhdGVfdmlld190cmFjayBmYWN0b3IgY3JlYXRlZA0KZGYkRF9WX1QgPC0gcGFzdGUoZGYkRGF0ZSwgZGYkVmlldywgZGYkVHJhY2ssIHNlcD0nXycpDQpkZiREX1ZfVCA8LSBhcy5mYWN0b3IoZGYkRF9WX1QpDQojIyBEYXRlX3ZpZXcgZmFjdG9yIGNyZWF0ZWQNCmRmJERfViA8LSBwYXN0ZShkZiREYXRlLCBkZiRWaWV3LCBzZXA9J18nKSANCmRmJERfViA8LSBhcy5mYWN0b3IoZGYkRF9WKQ0KDQpoZWFkKGRmKQ0KdGFpbChkZikNCmBgYA0KDQpBZGQgY29sdW1ucyBvZiBtZXRhZGF0YSBiYXNlZCBvbiB0aGUgRF9WIG9mIGVhY2ggcm93DQoNCmBgYHtyfQ0KbWV0YWRhdGEgPC0gcmVhZC5jc3YoIkM6XFxVc2Vyc1xcbmljb2xlaDNcXERvY3VtZW50c1xcUG9zdC1kb2NcXERhdGFcXE1ldGFkYXRhIGZsYXQgZmlsZSAyMDIxLjA4LjEwLmNzdiIsIGhlYWRlciA9IFQpDQpoZWFkKG1ldGFkYXRhKQ0KdGFpbChtZXRhZGF0YSkNCg0KYWxsZGF0YSA8LSBtZXJnZShkZiwgbWV0YWRhdGEpDQoNCmhlYWQoYWxsZGF0YSkNCnRhaWwoYWxsZGF0YSkNCg0KVG90YWxEYXRhIDwtIG5hLm9taXQoYWxsZGF0YSkNCmhlYWQoVG90YWxEYXRhKQ0KDQpgYGANCg0KQWRkIGhlYWRpbmcsIHBpdGNoIGFuZCBkIGFuZCB2IHZhbHVlcw0KYGBge3J9DQp4MSA8LSBUb3RhbERhdGEkWFsxOihucm93KFRvdGFsRGF0YSktMSldDQp4MiA8LSBUb3RhbERhdGEkWFsyOm5yb3coVG90YWxEYXRhKV0NClRvdGFsRGF0YSRkeFsxOihucm93KFRvdGFsRGF0YSktMSldIDwtIHgyLXgxDQoNCnkxIDwtIFRvdGFsRGF0YSRZWzE6KG5yb3coVG90YWxEYXRhKS0xKV0NCnkyIDwtIFRvdGFsRGF0YSRZWzI6bnJvdyhUb3RhbERhdGEpXQ0KVG90YWxEYXRhJGR5WzE6KG5yb3coVG90YWxEYXRhKS0xKV0gPC0geTIteTENCg0KejEgPC0gVG90YWxEYXRhJFpbMToobnJvdyhUb3RhbERhdGEpLTEpXQ0KejIgPC0gVG90YWxEYXRhJFpbMjpucm93KFRvdGFsRGF0YSldDQpUb3RhbERhdGEkZHpbMToobnJvdyhUb3RhbERhdGEpLTEpXSA8LSB6Mi16MQ0KDQpUb3RhbERhdGEkZCA8LSBzcXJ0KFRvdGFsRGF0YSRkeF4yICsgVG90YWxEYXRhJGR5XjIgKyBUb3RhbERhdGEkZHpeMikNCg0KaGVhZChUb3RhbERhdGEpDQpgYGANCg0KYGBge3J9DQpUb3RhbERhdGEkdnggPC0gVG90YWxEYXRhJGR4LygxLzMwKSAgIyMgdmVsb2NpdHkgb24gdGhlIHggYXhpcw0KVG90YWxEYXRhJHZ5IDwtIFRvdGFsRGF0YSRkeS8oMS8zMCkgICMjIHZlbG9jaXR5IG9uIHRoZSB5IGF4aXMNClRvdGFsRGF0YSR2eiA8LSBUb3RhbERhdGEkZHovKDEvMzApICAjIyB2ZWxvY2l0eSBvbiB0aGUgeiBheGlzDQpUb3RhbERhdGEkdiA8LSBUb3RhbERhdGEkZC8oMS8zMCkgIyMgdG90YWwgdmVsb2NpdHkNCg0KVG90YWxEYXRhJGhlYWRpbmcgPC0gYXRhbihUb3RhbERhdGEkZHgvVG90YWxEYXRhJGR5KQ0KVG90YWxEYXRhJHBpdGNoIDwtIGF0YW4oVG90YWxEYXRhJGR6LyhzcXJ0KFRvdGFsRGF0YSRkeF4yICsgVG90YWxEYXRhJGR5XjIpKSkNCg0KaGlzdChUb3RhbERhdGEkcGl0Y2gvKDIqcGkpKjM2MCkNCmhpc3QoVG90YWxEYXRhJGhlYWRpbmcvKDIqcGkpKjM2MCkNCg0KaGlzdChUb3RhbERhdGEkZHpbYWJzKFRvdGFsRGF0YSRkeik8LjAxXSxicmVha3MgPSAxMDApDQpoaXN0KFRvdGFsRGF0YSRkeVthYnMoVG90YWxEYXRhJGR5KTwuMDFdLGJyZWFrcyA9IDEwMCkNCmhpc3QoVG90YWxEYXRhJGR4W2FicyhUb3RhbERhdGEkZHgpPC4wMV0sYnJlYWtzID0gMTAwKQ0KDQpgYGANCg0KYGBge3J9DQpzYXZlLmltYWdlKCJ+L1Bvc3QtZG9jL0RhdGEvVG90YWwgTWVyZ2VkIERhdGEgRmlsZSAoU2VwIDI0IDIwMjEpLlJEYXRhIikNCg0KYGBgDQoNCg0KDQoNCg==